<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>欢迎注册</title>
    <link href="../css/register.css" rel="stylesheet">
</head>
<body>

<div class="form-div">
    <div class="reg-content">
        <h1>欢迎注册</h1>
        <span>已有帐号？</span> <a href="#">登录</a>
    </div>
    <form id="reg-form" action="login.html" method="get">

        <table>

            <tr>
                <td>用户名</td>
                <td class="inputs">
                    <input name="username" type="text" id="username" >
                    <br>
                    <span id="username_err" class="err_msg" style="display: none">用户名不太受欢迎</span>
                </td>

            </tr>

            <tr>
                <td>密码</td>
                <td class="inputs">
                    <input name="password" type="password" id="password">
                    <br>
                    <span id="password_err" class="err_msg" style="display: none">密码格式有误</span>
                </td>
            </tr>


            <tr>
                <td>手机号</td>
                <td class="inputs"><input name="tel" type="text" id="tel">
                    <br>
                    <span id="tel_err" class="err_msg" style="display: none">手机号格式有误</span>
                </td>
            </tr>

        </table>

        <div class="buttons">
            <input value="注 册" type="submit" id="reg_btn">
        </div>
        <br class="clear">
    </form>

</div>


<script>

    //1. 验证用户名是否符合规则
    //1.1 获取用户名的输入框
    var usernameInput = document.getElementById("username");
    usernameInput.onblur = chkUsername;

    // 检查用户名
    function  chkUsername(){
        // 获取用户名，判断长度 username是你的组件
        // 判断为不为空
       var username =  document.getElementById("username").value;
       if(!username){
           console.log("用户名不能为空");
           return false;
       }
       // 判断长度 6到12个 问产品经理
        if(username.length >=6 && username.length<=12 ){
            // 合法的,显示错误的地方，不显示
            document.getElementById("username_err").style.display = 'none';
            return true;
        }else{
            // 非法的，显示错误的地方，显示
            document.getElementById("username_err").style.display = '';
            return false;
        }
    }

    // 失去焦点时调用
    document.getElementById("tel").onblur = chkPhone;
    function  chkPhone(){
        // 11位，手机号都是1开头
        // 手机号都是数字
        // 现在的验证都是前端验证，发送给服务器数据之前的验证
        var reg = /^[1]\d{10}$/;
        // 验证我们拿到数据，是否符合这个规则
        var phone = document.getElementById("tel").value.trim();
        // 如果匹配，返回true,否则返回false
        var flag = reg.test(phone);
        if(flag){
            // 合法的,显示错误的地方，不显示
            document.getElementById("tel_err").style.display = 'none';
            return true;
        }else{
            // 非法的，显示错误的地方，显示
            document.getElementById("tel_err").style.display = '';
            return false;
        }
        return flag;
    }

    // 如果用户名有问题，是不是不能跳转，或不能提交呀
    // 需要给表单的提交事件，重新定义，如何给表单加提交事件来？
    // 1.获取表单对象
    // 2.给它加提交事件
    document.getElementById("reg-form").onsubmit = function (){
        // 如果返回false,是不是就不提交了
        // true 和 false 取决于我们之前写的检查函数
        var flag = checkUsername() && chkPhone() ;
        if(!flag){
            alert("不能提交！")
        }
        return flag;
    }









    //1.2 绑定onblur事件 失去焦点
    //usernameInput.onblur = checkUsername;

    function checkUsername() {
        //1.3 获取用户输入的用户名
        var username = usernameInput.value.trim();

        //1.4 判断用户名是否符合规则：长度 6~12,单词字符组成
        var reg = /^\w{6,12}$/;
        var flag = reg.test(username);

        //var flag = username.length >= 6 && username.length <= 12;
        if (flag) {
            //符合规则
            document.getElementById("username_err").style.display = 'none';
        } else {
            //不合符规则
            document.getElementById("username_err").style.display = '';
        }

        return flag;
    }


    //1. 验证密码是否符合规则
    //1.1 获取密码的输入框
    var passwordInput = document.getElementById("password");

    //1.2 绑定onblur事件 失去焦点
    //passwordInput.onblur = checkPassword;

    function checkPassword() {
        //1.3 获取用户输入的密码
        var password = passwordInput.value.trim();

        //1.4 判断密码是否符合规则：长度 6~12
        var reg = /^\w{6,12}$/;
        var flag = reg.test(password);

        //var flag = password.length >= 6 && password.length <= 12;
        if (flag) {
            //符合规则
            document.getElementById("password_err").style.display = 'none';
        } else {
            //不合符规则
            document.getElementById("password_err").style.display = '';
        }

        return flag;
    }


    //1. 验证手机号是否符合规则
    //1.1 获取手机号的输入框
    var telInput = document.getElementById("tel");

    //1.2 绑定onblur事件 失去焦点
    //telInput.onblur = checkTel;

    function checkTel() {
        //1.3 获取用户输入的手机号
        var tel = telInput.value.trim();

        //1.4 判断手机号是否符合规则：长度 11，数字组成，第一位是1

        //var flag = tel.length == 11;
        var reg = /^[1]\d{10}$/;
        var flag = reg.test(tel);
        if (flag) {
            //符合规则
            document.getElementById("tel_err").style.display = 'none';
        } else {
            //不合符规则
            document.getElementById("tel_err").style.display = '';
        }

        return flag;
    }


    // //1. 获取表单对象
    // var regForm = document.getElementById("reg-form");
    //
    // //2. 绑定onsubmit 事件
    // regForm.onsubmit = function () {
    //     //挨个判断每一个表单项是否都符合要求，如果有一个不合符，则返回false
    //
    //     var flag = checkUsername() && checkPassword() && checkTel();
    //
    //     return flag;
    // }

</script>
</body>
</html>